package com.yj.common.core.domain.entity;


import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelIgnore;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;

import java.io.Serializable;
import java.util.Date;

@Getter
@Setter
@Document(indexName = "warninginfo",createIndex = false)
@ApiModel(value = "WarningInfo",description = "告警信息")
public class WarningInfo extends Model<WarningInfo> implements Serializable {
    /**
    * id
    */
    @ExcelIgnore
    @Id
    @Field(name = "id", type = FieldType.Integer)
    @ApiModelProperty("id")
    private Integer id;

    /**
     * 所属分类
     */
    @com.yj.common.annotation.Excel(name = "所属分类*")
    @Excel(name = "所属分类*")
    @Field(name = "category", type = FieldType.Text,analyzer = "jieba_index",searchAnalyzer = "jieba_index")
    @ApiModelProperty("所属分类")
    private String category;

    /**
     * 所属分类
     */
    @com.yj.common.annotation.Excel(name = "产品厂家*")
    @Excel(name = "产品厂家*")
    @Field(name = "producer", type = FieldType.Text,analyzer = "jieba_index",searchAnalyzer = "jieba_index")
    @ApiModelProperty("产品厂家")
    private String producer;

    /**
    * 所属模块
    */
    @com.yj.common.annotation.Excel(name = "所属模块")
    @Excel(name = "所属模块")
    @Field(name = "mouldName", type = FieldType.Text,analyzer = "jieba_index",searchAnalyzer = "jieba_index")
    @ApiModelProperty("所属模块")
    private String mouldName;

    /**
    * 所属单元
    */
    @com.yj.common.annotation.Excel(name = "所属单元")
    @Excel(name = "所属单元")
    @Field(name = "partName", type = FieldType.Text,analyzer = "jieba_index",searchAnalyzer = "jieba_index")
    @ApiModelProperty("所属单元")
    private String partName;

    /**
    *  告警名称
    */
    @com.yj.common.annotation.Excel(name = "告警名称*")
    @Excel(name = "告警名称*")
    @Field(name = "question", type = FieldType.Text,analyzer = "jieba_index",searchAnalyzer = "jieba_index")
    @ApiModelProperty("问题")
    private String question;

    /**
     * 告警解释
     */
    @com.yj.common.annotation.Excel(name = "告警解释*")
    @Excel(name = "告警解释*")
    @Field(name = "alarmInterpretation", type = FieldType.Text,analyzer = "jieba_index",searchAnalyzer = "jieba_index")
    @ApiModelProperty("告警解释")
    private String alarmInterpretation;

    /**
    * 告警级别
    */
    @com.yj.common.annotation.Excel(name = "告警级别")
    @Excel(name = "告警级别")
    @Field(name = "warningLeve", type = FieldType.Text,analyzer = "jieba_index",searchAnalyzer = "jieba_index")
    @ApiModelProperty("告警级别")
    private String warningLeve;

    /**
    * 告警原因
    */
    @com.yj.common.annotation.Excel(name = "告警原因*")
    @Excel(name = "告警原因*")
    @ApiModelProperty("告警原因")
    @Field(name = "warningReason", type = FieldType.Auto)
    private String warningReason;

    /**
    * 现场处理措施
     *
    */
    @com.yj.common.annotation.Excel(name = "现场处理措施*")
    @Excel(name = "现场处理措施*")
    @ApiModelProperty("现场处理措施")
    @Field(name = "methodHanld", type = FieldType.Auto)
    private String methodHanld;

    /**
     * 创建时间
     */
    @ExcelIgnore
    private Date createTime;

    /**
     * 更新时间
     */
    @ExcelIgnore
    private Date updateTime;
}